package com.jeehentor.system.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.jeehentor.entity.SysMenu;
import com.jeehentor.dto.MenuDTO;
import com.jeehentor.vo.MenuVO;

import java.util.List;

/**
 * <p>
 * 系统菜单表 服务类
 * </p>
 *
 * @author wzd
 * @since 2024-04-01
 */
public interface ISysMenuService extends IService<SysMenu> {
    // 添加菜单
    void addMenu(MenuDTO menuDTO);

    // 更新菜单
    void updateMenu(MenuDTO menuDTO);

    // 删除菜单
    void deleteMenu(SysMenu sysMenu);

    // 获取菜单列表
    List<MenuVO> menuList(MenuDTO menuDTO);

    // 获取菜单详情
    MenuVO menuDetail(SysMenu sysMenu);

    // 获取路由
    List<MenuVO> getRouter();

    List<MenuVO> buildTree(List<SysMenu> list);

    // 判断菜单是否存在
    MenuDTO existMenu(String parentId, String name);
}
